Faithful Ideal Models for Recursive Polymorphic Types
نویسندگان
چکیده
We explore ideal models for a programming language with recursive polymorphic types, variants of the model studied by MacQueen, Plotkin, and Sethi. The use of suitable ideals yields a close t between models and programming language. Two of our semantics of type expressions are faithful, in the sense that programs that behave identically in all contexts have exactly the same types.
منابع مشابه
A Per Model of Polymorphism and Recursive Types
The ideal model provides an interpretation for a rich type system, with polymorphism and recursion [12], but not a model of the typed λ-calculus. In search for a satisfactory semantics for λ-calculi with recursive and polymorphic types, it seems natural, then, to consider partial equivalence relations (pers) instead of ideals. As ideals are certain subsets of a universal domain D, we replace th...
متن کاملFrom parametric polymorphism to models of polymorphic FPC
This paper shows how PILLY (Polymorphic Intuitionistic / Linear Lambda calculus with a fixed point combinator Y ) with parametric polymorphism can be used as a metalanguage for domain theory, as originally suggested by Plotkin more than a decade ago. Using Plotkin’s encodings of recursive types in PILLY we show how parametric models of PILLY give rise to models of FPC, a simply typed lambda cal...
متن کاملOCamllight in Ott
OCamllight key points •Written in Ott • Faithful to Objective Caml (very nearly) • Type soundness proof mechanized in HOL (Coq and Isabelle/HOL definitions generated too) • Operational semantics validated on test programs • Small-step operational semantics (131 rules) • Type system (179 rules, below) • definitions: – variant data types (e.g., type t = I of int | C of char), – record types (e.g....
متن کاملSyntactic Type Polymorphism for Recursive Function De nitions
Higher-order programming languages, such as ML, permit a exible programming style by using compile-time type inference together with the concept of type polymorphism, which allows to specify the types of generic functions. In ML, however, recursive functions must always be given a unique (monomorphic) type inside their deenition. Giving polymorphic types to recursive functions is known as the p...
متن کاملOperational Semantics and Models of Linear Abadi-Plotkin Logic
We present a model of Linear Abadi and Plotkin Logic for parametricity [8] based on the operational semantics of LILY, a polymorphic linear lambda calculus endowed with an operational semantics [3]. We use it to formally prove definability of general recursive types in LILY and to derive reasoning principles for the recursive types.
متن کامل